package com.pro.mapper;

import com.pro.pojo.*;
import com.sun.org.apache.xpath.internal.operations.Bool;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author cyj
 * @date 2022.1.10$ 14.06$
 * @content :
 */
public interface JsGoodsMapper {
    //查看总数
    int count(JsGoods jsGoods);
    //获取商品列表
    List<JsGoods> getTable(JsGoods jsGoods);
    /*根据按钮修改上下架状态     2022.1.11   15.51     CYJ*/
    Boolean updateGoodsSate(@Param("productId")Integer productId,@Param("productSate")Integer productSate);
    /*查看某个商品的详细审核信息 2022.1.11   16.44     CYJ*/
    List<JsCourseRecord> getGoodsRecord(Integer productId);
    /*删除一个商品               2022.1.11   19.34     CYJ*/
    Boolean delGoods(Integer productId);
    /*高级检索商品               2022.1.12   9.33      CYJ*/
    List<JsGoods> SearchGoods(JsGoods jsGoods);
    /*查看一个商品的详细信息     2022.1.12   11.29     CYJ*/
    JsGoods getGoodsMsg(Integer productId);
    /*修改一件商品的详细信息     2022.1.12   14.31     CYJ*/
    Boolean updateGoods(JsGoods jsGoods);
    /*查看商品的日志             2022.1.12   16.27     CYJ*/
    List<JsCourse> getGoodsJournal(@Param("productId") Integer productId,@Param("type") Integer type);
    /**
     * @author CYJ
     * @date 2022/1/13  18:49
     * @content : 查看商品的相关操作日志
     */
    List<JsOperationLog> getGoodsJournals(@Param("type")String type, @Param("executionTime")String executionTime, @Param("operationType")Integer operationType);
    /**
     * @author CYJ
     * @date 2022/1/13  19:44
     * @content : 删除一条日志
     */
    Boolean delJournalById(Integer id);
    /**
     *
     * @author CYJ
     * @date 2021/12/14 2002.8.54
     * @content :获取商品历史价格记录
     */
    List<JsCourseJournal> getPriceJournal(@Param("productCode")Integer productCode,@Param("productName")String  productName,@Param("updateDate")String updateDate,Integer type);
    /**
     *
     * @author CYJ
     * @date 2021/12/14 2002.9.14
     * @content :删除一条商品历史价格记录
     */
    Boolean delPriceJournal(Integer id);
    /**
     *
     * @author CYJ
     * @date 2022/1.19  18.50
     * @content :获取商品的分类
     */
    List<JsGoodsCategroy> getGoodsClass();
    /**
     *
     * @author CYJ
     * @date 2022/1.19  19.12
     * @content :添加商品
     */
    Boolean addGoods(JsProduct jsProduct);
    /**
     *
     * @author CYJ
     * @date 2022/1.22  18.34
     * @content :获取审核商品信息
     */
    List<JsGoods> getExamineTable(@Param("productName")String productName,@Param("title")String title,@Param("trueName")String trueName,@Param("type")Integer type,@Param("result")String result);
    /**
     *
     * @author CYJ
     * @date 2022/1.26  22.38
     * @content :审核商品
     */
    Boolean insertRecord(JsCourseRecord jsCourseRecord);
    /**
     *
     * @author CYJ
     * @date 2022/1.26  23.01
     * @content :审核商品
     */
    Boolean insertRecord2(@Param("implementDate")String implementDate,@Param("id")Integer id);
    /**
     *
     * @author CYJ
     * @date 2022/1.28  20.36
     * @content :商品点击数
     */
    List<JsGoods> hitsSum();
    /**
     *
     * @author CYJ
     * @date 2022/1.28  20.54
     * @content :商品收藏数
     */
    List<JsGoods> collectionSum();
    /**
     *
     * @author CYJ
     * @date 2022/12/13 21:23
     * @content :添加商品操作日志
     */
    Integer addOperationLog(JsOperationLog jsOperationLog);
    /**
     *
     * @author CYJ
     * @date 2022/2/8 9:19
     * @content :添加商品历史日志
     */
    Boolean addJournal(JsGoodsJournal jsGoodsJournal);
}
